const { Model, DataTypes } = require('sequelize')

class Users extends Model {
  static init(sequelize) {
    super.init(
     {
       id: {
         type: DataTypes.INTEGER,
         primaryKey: true,
         autoIncrement: true,
         },
       nickname: {
         type: DataTypes.STRING(20),
         allowNull: false,
        },
     account: {
       type: DataTypes.STRING(20),
       allowNull: false,
       unique: true, // 账号唯一
        },
     avatar: {
       type: DataTypes.STRING(120),
        },
     password: {
       type: DataTypes.STRING(100), // 加密后的密码长度可能较长
       allowNull: false,
        },
     state: {
       type: DataTypes.STRING(20),
       allowNull: false,
       defaultValue: '1', // 默认状态为启用（1）
        },
     banreason: {
       type: DataTypes.STRING(120)
        },
      createdAt: {
       type: DataTypes.DATE,
       allowNull: false
        },
        updatedAt: {
       type: DataTypes.DATE,
       allowNull: false
     },
     },
     {
    sequelize,
    modelName: 'Users',
    tableName: 'users',
    timestamps: false // 禁止自动管理 createdAt 和 updatedAt
  }
    );
  }

  static associate(models) {
    // 定义关联关系
  }
}

module.exports = Users